﻿/// <reference path="../../yui-3.14-min.js" />
YUI.add('examenes-list-view', function (Y) {
    Y.ExamenesView = Y.Base.create('ExamenesView', Y.View, [], {
        loadTemplate: function () {
            debugger
            if (this.template == '') {
                var that = this,
                    request = Y.io('/ExcellentProject/scripts/views/examenes/examenes/templates/examenes.html', {
                        on: {
                            complete: function (id, response) {
                                that.templateIsCharged = true;
                                that.template = response.responseText;
                                try {
                                    $('#table_id_examenesActivos').parent().replaceWith('');
                                    $('#table_id_examenesInactivos').parent().replaceWith('');
                                    $('#table_id_examenesCaducados').parent().replaceWith('');
                                } catch (err) {
                                    console.log(err)
                                }
                                that.render();
                            },
                            failure: function (id, response) {
                                alert(response)
                            }
                        }
                    });
            }
        },
        render: function () {
            this.loadTemplate();
            if (this.templateIsCharged) {
                this.get('container').setHTML(this.template);
                //creacion de los modelos
                var listActivos = this.get('modelList').toJSON();
                var listInactivos = this.get('listaInactivos').toJSON();
                var listCaducados = this.get('listaCaducados').toJSON();
                debugger
                // TABLA DE EXAMENES ACTIVOS
                    var tableActivos = $('#table_id_examenesActivos').DataTable({
                        "language": {
                            "search": "Buscar:",
                            "lengthMenu": "Items por página: _MENU_",
                            "info": "Items del _START_ al _END_ de _TOTAL_ items.",
                            "emptyTable": "Items no disponibles.",
                            "infoEmpty": "0 ítems.",
                            "paginate": {
                                "next": "Siguiente",
                                "previous": "Anterior",
                                "first": "Primero",
                                "last": "Ultimo"
                            }
                        },
                        "paging": true,
                        retrieve: true,
                        data: listActivos,
                        "rowCallback": function (row, aData) {
                            debugger
                            $('td:eq(0)', row);
                            $('td:eq(8)', row).html('<a title="Editar" class="btn btn-warning" href="/misexamenes/' + aData.IdCalendarizacion + '"> ' +
                             '<i class="fa fa-pencil">' + '</i>' + '<span class="tooltip"></span></a>');
                            $('td:eq(9)', row).html('<a title="Eliminar" class="btn btn-danger" href="/misexamenes/eliminar/' + aData.IdCalendarizacion + '"> ' +
                             '<i class="fa fa-trash-o">' + '</i>' + '<span class="tooltip"></span></a>');
                        },
                        columns: [
                            { data: 'Cuestionario' },
                            { data: 'Descripcion' },
                            { data: 'Intentos' },
                            { data: 'TiempoExamen' },
                            { data: 'Fecha' },
                            { data: 'FechaCierre' },
                            { data: 'NombreCurso' },
                            { data: 'Estado' },
                            { data: 'IdCalendarizacion' },
                            { data: 'IdCalendarizacion' }
                        ]
                    });
                    tableActivos.draw();
                // TABLA DE EXAMENES INACTIVOS

                    var tableInactivos = $('#table_id_examenesInactivos').DataTable({
                        "language": {
                            "search": "Buscar:",
                            "lengthMenu": "Items por página: _MENU_",
                            "info": "Items del _START_ al _END_ de _TOTAL_ items.",
                            "emptyTable": "Items no disponibles.",
                            "infoEmpty": "0 ítems.",
                            "paginate": {
                                "next": "Siguiente",
                                "previous": "Anterior",
                                "first": "Primero",
                                "last": "Ultimo"
                            }
                        },
                        "paging": true,
                        retrieve: true,
                        data: listInactivos,
                        "rowCallback": function (row, aData) {
                            debugger
                            $('td:eq(8)', row).html('<a title="Editar" class="btn btn-warning" href="/misexamenes/' + aData.IdCalendarizacion + '"> ' +
                             '<i class="fa fa-pencil">' + '</i>' + '<span class="tooltip"></span></a>');
                            $('td:eq(9)', row).html('<a title="Eliminar" class="btn btn-danger" href="/misexamenes/eliminar/' + aData.IdCalendarizacion + '"> ' +
                             '<i class="fa fa-trash-o">' + '</i>' + '<span class="tooltip"></span></a>');
                        },
                        columns: [
                             { data: 'Cuestionario' },
                             { data: 'Descripcion' },
                             { data: 'Intentos' },
                             { data: 'TiempoExamen' },
                             { data: 'Fecha' },
                             { data: 'FechaCierre' },
                             { data: 'NombreCurso' },
                             { data: 'Estado' },
                             { data: 'IdCalendarizacion' },
                             { data: 'IdCalendarizacion' }
                        ]
                    });
                    tableInactivos.draw()
                // TABLA DE EXAMENES CADUCADOS
                    var tableCaducados = $('#table_id_examenesCaducados').DataTable({
                        "language": {
                            "search": "Buscar:",
                            "lengthMenu": "Items por página: _MENU_",
                            "info": "Items del _START_ al _END_ de _TOTAL_ items.",
                            "emptyTable": "Items no disponibles.",
                            "infoEmpty": "0 ítems.",
                            "paginate": {
                                "next": "Siguiente",
                                "previous": "Anterior",
                                "first": "Primero",
                                "last": "Ultimo"
                            }
                        },
                        "paging": true,
                        retrieve: true,
                        data: listCaducados,
                        rowCallback: function (row, aData) {
                            $('td:eq(8)', row).html('<a title="Editar" class="btn btn-warning" href="/misexamenes/' + aData.IdCalendarizacion + '"> ' +
                             '<i class="fa fa-pencil">' + '</i>' + '<span class="tooltip"></span></a>');
                            $('td:eq(9)', row).html('<a title="Eliminar" class="btn btn-danger" href="/misexamenes/eliminar/' + aData.IdCalendarizacion + '"> ' +
                                 '<i class="fa fa-trash-o">' + '</i>' + '<span class="tooltip"></span></a>');
                        },
                        columns: [
                             { data: 'Cuestionario' },
                             { data: 'Descripcion' },
                             { data: 'Intentos' },
                             { data: 'TiempoExamen' },
                             { data: 'Fecha' },
                             { data: 'FechaCierre' },
                             { data: 'NombreCurso' },
                             { data: 'Estado' },
                             { data: 'IdCalendarizacion' },
                             { data: 'IdCalendarizacion' }
                        ]
                    });
                    tableCaducados.draw()
                }
        },
    })
}, '0.0.0.1', {
    requires: ['view', 'examen-consulta-model-list', 'examen-consulta-model', 'io', 'handlebars', 'aui-scheduler', 'event', 'node-event-simulate', 'handlebars-select-helper', 'node', 'aui-form-validator']
})